/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package trabalhocompiladores.controle;

import java.io.File;
import javax.swing.JPanel;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import sun.net.www.content.audio.x_aiff;
import trabalhocompiladores.entidade.Automato;
import trabalhocompiladores.persistencia.IPersistencia;
import trabalhocompiladores.persistencia.XML.PersistenciaXML;

/**
 *
 * @author u031254
 */
public class controleFrameView {
    
    private IPersistencia persistencia;
    private Automato automato;
    
    
    
    public DefaultTableModel gerarAFN(String expressaoRegular){
        automato = new Automato();
        automato.gerarAFN(expressaoRegular);
        return automato.desenharMatriz();
    } 

    public void salvarAutomato(File arquivo) {
        
        
        
        if(arquivo.getName().endsWith(".xml")){
        persistencia = new PersistenciaXML();
        }
        persistencia.save(automato, arquivo);
    }

    public DefaultTableModel carregarAutomato(File arquivo) {
        
        if(arquivo.getName().endsWith(".xml")){
        persistencia = new PersistenciaXML();
        }
       this.automato = (Automato) persistencia.load(arquivo);
       return automato.desenharMatriz();
       
    }
    
    
    
    
    
    
    
}
